1. Field of the Invention
This invention relates generally to an improvement in error logging, and more specifically to programming the error levels of errors occurring in a data processing system.
2. Description of the Prior Art
Many data processing systems (e.g., computer systems, programmable electronic systems, telecommunication switching systems, control systems, and so forth) detect different types of errors. Some errors indicate a minor problem while other errors indicate a serious problem. Because data processing systems are being designed to offer higher percentages of “up-time,” it is critical to know how severe an error is and whether the system must be shut down to limit data corruption, or if the system can continue to operate without impact to the user.
These are examples of errors that are detected:                (1) A single bit error correction code (ECC) error is correctable in hardware.        (2) A double bit ECC error, which may be a fatal error, depending on the data processing system and the type of packet.        (3) A timeout error has variable levels of severity, depending on which process was timed out.        
These are typical levels of error severity:                (1) A correctable error is an error that can be corrected, and which is logged.        (2) An uncorrectable error is an error which may require some software help to keep the error contained and keep the system running.        (3) A fatal error is an error that has corrupted the system, and which may cause data corruption if the data processing system or subsystem is not halted immediately.        
Each error is originally classified in its level of severity during the design of the data processing system. Many prior art data processing systems have the ability to either disable an error from being reported, or to “promote” (i.e., raise) the severity level of any error to a fatal error level. This allows some flexibility, but in some cases is not adequate. For example, an error that was initially thought to be a correctable error may turn out to be a more severe error, requiring software assistance to fully contain the error and keep the data processing system running.
It would be desirable to have the capability to change error levels from any level to any other level. It would also be desirable to have the capability to change error levels, depending on the particular configuration of a data processing system.